*, *:after, *:before {
    box-sizing: border-box;
}

*:before, *:after {
    position: absolute;
    content: '';
    display: block;
}

body {
    /*background: #ffb4bf;*/
}

#heart {
    -webkit-transform: rotate(-45deg);
    position: relative;
    margin: 50px auto;
    height: 24px;
    width: 24px;
    border-radius: 100%;
    border-width: 24px;
    background: #f7dce0;
    border-style: solid;
    border-color: #fef4f6 transparent transparent #fef4f6;
}
#heart:before {
    border-radius: 100%;
    height: 20px;
    width: 20px;
    background: #ff778b;
    left: -12px;
    top: -18px;
    box-shadow: 10px 10px 0 0 #f03651;
}
#heart:after {
    width: 0px;
    height: 0px;
    top: -8px;
    left: -12px;
    background: #f03651;
    border-style: solid;
    border-width: 20px 20px 0 0;
    border-color: #ff778b transparent transparent transparent;
}